#include "stm32f4xx.h"
#include "stm32f4xx_gpio.h"
#include "stm32f4xx_rcc.h"
#include "key.h"

void key_init(void)
{
  GPIO_InitTypeDef GPIO_InitStruct;

  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC|RCC_AHB1Periph_GPIOB, ENABLE);

  GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN;
  GPIO_InitStruct.GPIO_Pin = GPIO_Pin_15 | GPIO_Pin_14 ;
  GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_UP;

  GPIO_Init(GPIOC, &GPIO_InitStruct);

   GPIO_InitStruct.GPIO_Pin = GPIO_Pin_10;
     GPIO_Init(GPIOB, &GPIO_InitStruct);
}

unsigned char key_scanf(void)
{
  unsigned char key_value = 0;

  if (GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_10) == 0)
    key_value = 1;
  // key_value |= (1<<0);
  else if (GPIO_ReadInputDataBit(GPIOC, GPIO_Pin_15) == 0)
    key_value = 2;

  // key_value |= (1<<1);
  else if (GPIO_ReadInputDataBit(GPIOC, GPIO_Pin_14) == 0)
    key_value = 5;

  else
    key_value = 0;
  // key_value |= (1<<2);

  return key_value;
}